<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2">
<meta name="theme-color" content="#222">
<meta name="generator" content="Hexo 6.0.0">
  <link rel="apple-touch-icon" sizes="180x180" href="/wang-cheng/images/apple-touch-icon-next.png">
  <link rel="icon" type="image/png" sizes="32x32" href="/wang-cheng/images/favicon-32x32-next.png">
  <link rel="icon" type="image/png" sizes="16x16" href="/wang-cheng/images/favicon-16x16-next.png">
  <link rel="mask-icon" href="/wang-cheng/images/logo.svg" color="#222">

<link rel="stylesheet" href="/wang-cheng/css/main.css">


<link rel="stylesheet" href="/wang-cheng/lib/font-awesome/css/all.min.css">

<script id="hexo-configurations">
    var NexT = window.NexT || {};
    var CONFIG = {"hostname":"cheng-wang123.gitee.io","root":"/wang-cheng/","scheme":"Gemini","version":"7.8.0","exturl":false,"sidebar":{"position":"left","display":"post","padding":18,"offset":12,"onmobile":false},"copycode":{"enable":false,"show_result":false,"style":null},"back2top":{"enable":true,"sidebar":false,"scrollpercent":false},"bookmark":{"enable":false,"color":"#222","save":"auto"},"fancybox":false,"mediumzoom":false,"lazyload":false,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"algolia":{"hits":{"per_page":10},"labels":{"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}},"localsearch":{"enable":false,"trigger":"auto","top_n_per_article":1,"unescape":false,"preload":false},"motion":{"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}}};
  </script>

  <meta name="description" content="子查询中，父查询中一般使用IN运算符的是A. 单列单值嵌套查询 B. 单列多值嵌套查询 C. 多列多值嵌套查询 D. 集合查询 解析：where型子查询：指把内部查询的结果作为外层查询的比较条件。子查询：单列单值 from型子查询：把内层的查询结果当成临时表，供外层sql再次查询。子查询：多行多列 in子查询：内层查询语句仅返回一个数据列，这个数据列的值将供外层查询语句进行比较 子查询：单列多行">
<meta property="og:type" content="article">
<meta property="og:title" content="数据库刷题">
<meta property="og:url" content="https://cheng-wang123.gitee.io/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/index.html">
<meta property="og:site_name" content="诚の博客">
<meta property="og:description" content="子查询中，父查询中一般使用IN运算符的是A. 单列单值嵌套查询 B. 单列多值嵌套查询 C. 多列多值嵌套查询 D. 集合查询 解析：where型子查询：指把内部查询的结果作为外层查询的比较条件。子查询：单列单值 from型子查询：把内层的查询结果当成临时表，供外层sql再次查询。子查询：多行多列 in子查询：内层查询语句仅返回一个数据列，这个数据列的值将供外层查询语句进行比较 子查询：单列多行">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://cheng-wang123.gitee.io/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/%E8%BF%90%E7%AE%97%E7%AC%A6.png">
<meta property="article:published_time" content="2022-04-19T12:09:49.000Z">
<meta property="article:modified_time" content="2022-04-21T07:15:05.010Z">
<meta property="article:author" content="王诚">
<meta property="article:tag" content="刷题">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://cheng-wang123.gitee.io/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/%E8%BF%90%E7%AE%97%E7%AC%A6.png">

<link rel="canonical" href="https://cheng-wang123.gitee.io/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/">


<script id="page-configurations">
  // https://hexo.io/docs/variables.html
  CONFIG.page = {
    sidebar: "",
    isHome : false,
    isPost : true,
    lang   : 'zh-CN'
  };
</script>

  <title>数据库刷题 | 诚の博客</title>
  






  <noscript>
  <style>
  .use-motion .brand,
  .use-motion .menu-item,
  .sidebar-inner,
  .use-motion .post-block,
  .use-motion .pagination,
  .use-motion .comments,
  .use-motion .post-header,
  .use-motion .post-body,
  .use-motion .collection-header { opacity: initial; }

  .use-motion .site-title,
  .use-motion .site-subtitle {
    opacity: initial;
    top: initial;
  }

  .use-motion .logo-line-before i { left: initial; }
  .use-motion .logo-line-after i { right: initial; }
  </style>
</noscript>

<link rel="alternate" href="/wang-cheng/atom.xml" title="诚の博客" type="application/atom+xml">
</head>

<body itemscope itemtype="http://schema.org/WebPage">
  <div class="container use-motion">
    <div class="headband"></div>

    <header class="header" itemscope itemtype="http://schema.org/WPHeader">
      <div class="header-inner"><div class="site-brand-container">
  <div class="site-nav-toggle">
    <div class="toggle" aria-label="切换导航栏">
      <span class="toggle-line toggle-line-first"></span>
      <span class="toggle-line toggle-line-middle"></span>
      <span class="toggle-line toggle-line-last"></span>
    </div>
  </div>

  <div class="site-meta">

    <a href="/wang-cheng/" class="brand" rel="start">
      <span class="logo-line-before"><i></i></span>
      <h1 class="site-title">诚の博客</h1>
      <span class="logo-line-after"><i></i></span>
    </a>
      <p class="site-subtitle" itemprop="description">记录学习中的点点滴滴</p>
  </div>

  <div class="site-nav-right">
    <div class="toggle popup-trigger">
    </div>
  </div>
</div>




<nav class="site-nav">
  <ul id="menu" class="main-menu menu">
        <li class="menu-item menu-item-home">

    <a href="/wang-cheng/" rel="section"><i class="fa fa-home fa-fw"></i>首页</a>

  </li>
        <li class="menu-item menu-item-tags">

    <a href="/wang-cheng/tags/" rel="section"><i class="fa fa-tags fa-fw"></i>标签</a>

  </li>
        <li class="menu-item menu-item-categories">

    <a href="/wang-cheng/categories/" rel="section"><i class="fa fa-th fa-fw"></i>分类</a>

  </li>
        <li class="menu-item menu-item-archives">

    <a href="/wang-cheng/archives/" rel="section"><i class="fa fa-archive fa-fw"></i>归档</a>

  </li>
  </ul>
</nav>




</div>
    </header>

    
  <div class="back-to-top">
    <i class="fa fa-arrow-up"></i>
    <span>0%</span>
  </div>


    <main class="main">
      <div class="main-inner">
        <div class="content-wrap">
          

          <div class="content post posts-expand">
            

    
  
  
  <article itemscope itemtype="http://schema.org/Article" class="post-block" lang="zh-CN">
    <link itemprop="mainEntityOfPage" href="https://cheng-wang123.gitee.io/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/">

    <span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="image" content="/wang-cheng/images/avatar.gif">
      <meta itemprop="name" content="王诚">
      <meta itemprop="description" content="命运对勇士低语，你无法抵御风暴；勇士低声回应，我就是风暴">
    </span>

    <span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="诚の博客">
    </span>
      <header class="post-header">
        <h1 class="post-title" itemprop="name headline">
          数据库刷题
        </h1>

        <div class="post-meta">
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-calendar"></i>
              </span>
              <span class="post-meta-item-text">发表于</span>

              <time title="创建时间：2022-04-19 20:09:49" itemprop="dateCreated datePublished" datetime="2022-04-19T20:09:49+08:00">2022-04-19</time>
            </span>
              <span class="post-meta-item">
                <span class="post-meta-item-icon">
                  <i class="far fa-calendar-check"></i>
                </span>
                <span class="post-meta-item-text">更新于</span>
                <time title="修改时间：2022-04-21 15:15:05" itemprop="dateModified" datetime="2022-04-21T15:15:05+08:00">2022-04-21</time>
              </span>

          
            <span class="post-meta-item" title="阅读次数" id="busuanzi_container_page_pv" style="display: none;">
              <span class="post-meta-item-icon">
                <i class="fa fa-eye"></i>
              </span>
              <span class="post-meta-item-text">阅读次数：</span>
              <span id="busuanzi_value_page_pv"></span>
            </span>

        </div>
      </header>

    
    
    
    <div class="post-body" itemprop="articleBody">

      
        <h2 id="子查询中，父查询中一般使用IN运算符的是"><a href="#子查询中，父查询中一般使用IN运算符的是" class="headerlink" title="子查询中，父查询中一般使用IN运算符的是"></a><strong>子查询中，父查询中一般使用IN运算符的是</strong></h2><p>A. 单列单值嵌套查询</p>
<p>B. 单列多值嵌套查询</p>
<p>C. 多列多值嵌套查询</p>
<p>D. 集合查询</p>
<p>解析：<br>where型子查询：指把内部查询的结果作为外层查询的比较条件。子查询：单列单值</p>
<p>from型子查询：把内层的查询结果当成临时表，供外层sql再次查询。子查询：多行多列</p>
<p>in子查询：内层查询语句仅返回一个数据列，这个数据列的值将供外层查询语句进行比较 子查询：单列多行</p>
<p>exists子查询：把外层的查询结果，拿到内层，看内层是否成立，简单来说后面的返回true,外层（也就是前面的语句）才会执行，否则不执行。</p>
<p>any子查询：只要满足内层子查询中的任意一个比较条件，就返回一个结果作为外层查询条件。</p>
<p>all子查询：内层子查询返回的结果需同时满足所有内层查询条件。</p>
<hr>
<h2 id="下列选项中都属于关系代数运算符中集合运算符的是"><a href="#下列选项中都属于关系代数运算符中集合运算符的是" class="headerlink" title="下列选项中都属于关系代数运算符中集合运算符的是"></a><strong>下列选项中都属于关系代数运算符中集合运算符的是</strong></h2><p>A. ∩、∪、−、×</p>
<p>B. ∩、∪、σ、π</p>
<p>C. ∧、∨、−、×</p>
<p>D. σ、π、¬、∩</p>
<p>解析：</p>
<p>选择（σ， selection）、投影（π， projection）、叉乘（x， cross-product）、</p>
<p>差（-, set-difference）和并（υ, union）</p>
<p>它们和SQL语句的对应关系为：</p>
<p>选择（σ， selection）相当于SQL语句中的where，表示选出满足一定条件的行。</p>
<p>如：σ rating&gt;8 (S2）相当于 select * from S2 where rating&gt;8;</p>
<p>投影（π， projection）相当于SQL语句中的select。。。distinct， 表示选择哪些列。注意：投影是会去重的！</p>
<p>如：π sname,rating (σ rating&gt;8 (S2）)相当于 select sname, rating from S2 where rating&gt;8;</p>
<p>叉乘（x， cross-product）相当于SQL语句中的from，表示穷举所有集合两边元素的组合量</p>
<p>如: AxB 相当于 select * from A, B;  注意：叉乘时两个集合不能有重名列</p>
<p>差（-, set-difference）R-S返回所有在R中而不在S中的元组</p>
<p>并（υ, union）RυS返回包含在R中或在S中的所有元组</p>
<img src="/wang-cheng/2022/04/19/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%88%B7%E9%A2%98/%E8%BF%90%E7%AE%97%E7%AC%A6.png" class title="运算符">
<hr>
<h2 id="下列选项中不属于结构化查询语言的组成部分的是（）"><a href="#下列选项中不属于结构化查询语言的组成部分的是（）" class="headerlink" title="下列选项中不属于结构化查询语言的组成部分的是（）"></a><strong>下列选项中不属于结构化查询语言的组成部分的是（）</strong></h2><p>A. 数据定义语言</p>
<p>B. 数据处理语言</p>
<p>C. 数据字典</p>
<p>D. 数据库事务</p>
<p>解析：结构化查询语言包含6个部分</p>
<p>一：数据查询语言（DQL：Data Query Language）</p>
<p>二：数据操作语言（DML：Data Manipulation Language）</p>
<p>三：事务处理语言（TPL）</p>
<p>四：数据控制语言（DCL）</p>
<p>五：数据定义语言（DDL）</p>
<p>六：指针控制语言（CCL）</p>
<hr>
<h2 id="Mysql中表student-info-id-name-birth-sex-，字段类型都是varchar，插入：1018-赵六-2003-08-02-男；SQL正确的是（）？"><a href="#Mysql中表student-info-id-name-birth-sex-，字段类型都是varchar，插入：1018-赵六-2003-08-02-男；SQL正确的是（）？" class="headerlink" title="Mysql中表student_info(id,name,birth,sex)，字段类型都是varchar，插入：1018 , 赵六 , 2003-08-02 , 男；SQL正确的是（）？"></a><strong>Mysql中表student_info(id,name,birth,sex)，字段类型都是varchar，插入：1018 , 赵六 , 2003-08-02 , 男；SQL正确的是（）？</strong></h2><p>A. insert overwrite student_info values(‘1018’ , ‘赵六’ , ‘2003-08-02’ , ‘男’);</p>
<p>B. insert into student_info values(1018 , ‘赵六’ , ‘2003-08-02’ , ‘男’);</p>
<p>C. insert into student_info(<code>birth</code>,<code>id</code>,name,<code>sex</code>) values(‘2003-08-02’ ,’1018’ , ‘赵六’ , ‘男’);</p>
<p>D. insert into student_info value(‘1018’ , ‘赵六’ , ‘2003-08-02’ , ‘男’);</p>
<p>解析：</p>
<p>A执行报错，插入时是insert into不是insert overwrite；</p>
<p>B执行报错，id是varchar类型，插入的1018需要加上单引号；</p>
<p>D执行报错，插入时是values不是value；</p>
<p><strong>所以C正确，字段名顺序与字段值顺序一致即可，可以给部分或所有字段名加``。</strong></p>
<hr>
<h2 id="Mysql中表student-table-id-name-birth-sex-，插入如下记录："><a href="#Mysql中表student-table-id-name-birth-sex-，插入如下记录：" class="headerlink" title="Mysql中表student_table(id,name,birth,sex)，插入如下记录："></a><strong>Mysql中表student_table(id,name,birth,sex)，插入如下记录：</strong></h2><p><strong>(‘1003’ , NULL , ‘2002-05-20’ , ‘男’);</strong></p>
<p><strong>(‘1004’ , ‘张三’ , ‘2000-09-06’ , ‘男’);</strong></p>
<p><strong>(‘1005’ , ‘李四’ , ‘2001-12-01’ , ‘女’);</strong></p>
<p><strong>(‘1006’ , NULL , ‘2001-12-02’ , ‘女’);</strong></p>
<p><strong>修改name字段为NULL的记录，是男生时设置name=’男生姓名’，是女生时设置name=’女生姓名’，如下SQL正确的是（）？</strong></p>
<p>A. update student_table set name  = ( case when sex = ‘男’ then ‘男生姓名’ when sex = ‘女’ then ‘女生姓名’ end) if name is null ;</p>
<p>B. update student_table when name is null set name  = ( case when sex = ‘男’ then ‘男生姓名’ when sex = ‘女’ then ‘女生姓名’) </p>
<p>C. update student_table set name  = ( when sex = ‘男’ then ‘男生姓名’ when sex = ‘女’ then ‘女生姓名’) where name is null ;</p>
<p>D. update student_table set name  = ( case when sex = ‘男’ then ‘男生姓名’ when sex = ‘女’ then ‘女生姓名’ end) where name is null ;</p>
<p>解析：</p>
<p>【修改name字段为NULL的记录】需要把where条件写在最后；<br>case when的正确语法是: case when … then … when … then … else … end，case和end不能缺少！<br>所以D正确！<br><figure class="highlight ada"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">case</span> <span class="keyword">when</span> 判断表达式 <span class="keyword">then</span> 表达式</span><br><span class="line">     <span class="keyword">when</span> 判断表达式 <span class="keyword">then</span> 表达式</span><br><span class="line">     ...</span><br><span class="line">     <span class="keyword">else</span> 表达式</span><br><span class="line"><span class="keyword">end</span></span><br></pre></td></tr></table></figure><br>when子句的判断表达式用于判断某一行数据是否符合某个条件，若符合则返回then子句的表达式，若不符合则继续执行下一个when子句，如果所有的when子句都不符合，则返回else子句的表达式。</p>
<hr>
<h2 id="现在有一个学生表student，需要回收所有机器的nkw用户对学生表student所在数据库user的update和insert权限，则下列语句中能够实现这一功能的语句是（）"><a href="#现在有一个学生表student，需要回收所有机器的nkw用户对学生表student所在数据库user的update和insert权限，则下列语句中能够实现这一功能的语句是（）" class="headerlink" title="现在有一个学生表student，需要回收所有机器的nkw用户对学生表student所在数据库user的update和insert权限，则下列语句中能够实现这一功能的语句是（）"></a><strong>现在有一个学生表student，需要回收所有机器的nkw用户对学生表student所在数据库user的update和insert权限，则下列语句中能够实现这一功能的语句是（）</strong></h2><p>A. revoke update,insert on user.* to ‘nkw’@’%’;</p>
<p>B. revoke update,insert on <em>.</em> to ‘nkw’@’%’;</p>
<p>C. revoke update,insert on user.* from ‘nkw’@’%’;</p>
<p>D. revoke update,insert on <em>.</em> from ‘nkw’@’%’;</p>
<p>解析：</p>
<p>回收表的操作功能语句revoke … on … from。因此答案A、B不正确。由于题目要求是回收所有机器的nkw用户对user表的update和insert权限，而答案D是回收所有数据库的update和insert权限，因此答案D不正确。答案选择C</p>
<p>1.GRANT 赋于权限</p>
<p>常用的系统权限集合有以下三个:</p>
<p>CONNECT(基本的连接),   RESOURCE(程序开发),   DBA(数据库管理)</p>
<p>常用的数据对象权限有以下五个:</p>
<p>ALL   ON   数据对象名,   SELECT   ON   数据对象名,   UPDATE   ON   数据对象名,</p>
<p>DELETE   ON   数据对象名,     INSERT   ON   数据对象名,       ALTER     ON   数据对象名</p>
<p>GRANT   CONNECT,   RESOURCE   TO   用户名;</p>
<p>GRANT   SELECT   ON   表名   TO   用户名;</p>
<p>GRANT   SELECT,   INSERT,   DELETE   ON表名   TO   用户名1,   用户名2;</p>
<p>2.REVOKE   回收权限</p>
<p>REVOKE   CONNECT,   RESOURCE   FROM   用户名;</p>
<p>REVOKE   SELECT   ON   表名   FROM   用户名;</p>
<p>REVOKE   SELECT,   INSERT,   DELETE   ON表名   FROM   用户名1,   用户名2;</p>
<hr>
<h2 id="Mysql中表student-table-id-name-birth-sex-，插入如下记录：-1"><a href="#Mysql中表student-table-id-name-birth-sex-，插入如下记录：-1" class="headerlink" title="Mysql中表student_table(id,name,birth,sex)，插入如下记录："></a><strong>Mysql中表student_table(id,name,birth,sex)，插入如下记录：</strong></h2><p><strong>(‘1001’ , ‘’ , ‘2000-01-01’ , ‘男’);</strong></p>
<p><strong>(‘1002’ , null , ‘2000-12-21’ , ‘男’);</strong></p>
<p><strong>(‘1003’ , NULL , ‘2000-05-20’ , ‘男’);</strong></p>
<p><strong>(‘1004’ , ‘张三’ , ‘2000-08-06’ , ‘男’);</strong></p>
<p><strong>(‘1005’ , ‘李四’ , ‘2001-12-01’ , ‘女’);</strong></p>
<p><strong>查询2001年及之后出生的男生、女生总数，正确的SQL是（）？</strong></p>
<p>A. select sex,count(*) from student_table group by sex  where birth &gt;=’2001’ ;</p>
<p>B. select count(*) from student_table where birth &gt;=’2001’ group by sex ;</p>
<p>C. select sex,count(*) from student_table where birth &gt;=’2001’ group by sex ;</p>
<p>D. select sex,count(*) from student_table group by sex  having birth &gt;=’2001’ ;</p>
<p>解析：<br>题目是求【男生、女生总数】所以需要先写出sex,count(*)，所以B错误；</p>
<p>【2001年及之后出生的】是先卡条件再计数，所以需要用where先卡条件，where是写在group by前面，所以A错误；</p>
<p><strong>having是对计数后的结果做条件判断，所以D语义错误并且执行时也会报错；</strong><br>C是正确选项。</p>
<p>所以说having是对select中指定的列做条件判断，select没有的，having不能使用。所以having啥就要select啥。D选项having中的列在select中没有。并且<strong>题目是先卡条件再计数</strong>，语义也有错误</p>
<hr>
<h2 id="下面哪些字符最可能会导致sql注入"><a href="#下面哪些字符最可能会导致sql注入" class="headerlink" title="下面哪些字符最可能会导致sql注入?"></a><strong>下面哪些字符最可能会导致sql注入?</strong></h2><p>A. ‘（单引号）</p>
<p>B. /</p>
<p>C. “(双引号)</p>
<p>D. $</p>
<p>解析：单引号作为MySQL中的字段值封装方式，最容易被用作注入攻击</p>
<p>SQL注入的关键是单引号的闭合</p>
<hr>
<h2 id="ANY、ALL、Some的用法"><a href="#ANY、ALL、Some的用法" class="headerlink" title="ANY、ALL、Some的用法"></a><strong>ANY、ALL、Some的用法</strong></h2><p>All：对所有数据都满足条件，整个条件才成立；</p>
<p>Any：只要有一条数据满足条件，整个条件成立；</p>
<p>Some的作用和Any一样 .</p>
<hr>
<h2 id="批处理是指包含一条或多条T-SQL语句的语句组，下列选项中，关于批处理的规则描述正确的是（）"><a href="#批处理是指包含一条或多条T-SQL语句的语句组，下列选项中，关于批处理的规则描述正确的是（）" class="headerlink" title="批处理是指包含一条或多条T-SQL语句的语句组，下列选项中，关于批处理的规则描述正确的是（）"></a><strong>批处理是指包含一条或多条T-SQL语句的语句组，下列选项中，关于批处理的规则描述正确的是（）</strong></h2><p>A. 定义一个check约束后，可以在同一个批处理中使用</p>
<p>B. 修改一个表中的字段名后，不可以在同一个批处理中引用这个新字段</p>
<p>C. Create default，Create rule等语句同一个批处理中可以同时提交多个</p>
<p>D. 把规则和默认值绑定到表字段或自定义字段上之后，可以在同一个批处理中使用</p>
<p>解析：</p>
<p>A选项，不能定义一个check约束后，立即在同一个批处理中使用；</p>
<p>C选项，Create default，Create rule，Create trigger，Create procedure，Create view等语句同一个批处理中只能提交一个；</p>
<p>D选项，不能把规则和默认值绑定到表字段或自定义字段上之后，立即在同一个批处理中使用。</p>
<p><strong>某些特殊的SQL指令不能和别的SQL指令共存在一个批处理中。如Create Table命令、Create View命令等，这些指令只能独自存在于一个单独的存储过程中。</strong></p>
<hr>
<h2 id="MYSQL的存储过程和SQL-Server存储过程不同"><a href="#MYSQL的存储过程和SQL-Server存储过程不同" class="headerlink" title="MYSQL的存储过程和SQL Server存储过程不同"></a><strong>MYSQL的存储过程和SQL Server存储过程不同</strong></h2><p>在MySQL的存储变量中，定义变量时可以写成<code>@s_no AS int</code>，这里的AS可以被忽略。而在SQL Server中是不允许出现这个AS的。</p>
<hr>
<h2 id="下列关于视图说法错误的是？"><a href="#下列关于视图说法错误的是？" class="headerlink" title="下列关于视图说法错误的是？"></a><strong>下列关于视图说法错误的是？</strong></h2><p>A. 视图是虚表，它在存储时只存储视图的定义，而没有存储对应的数据</p>
<p>B. 创建视图用CREATE VIEW</p>
<p>C. 修改视图用ALTER VIEW</p>
<p>D. 删除视图用DELETE VIEW</p>
<p>解析：视图是虚表，它在存储时只存储视图的定义，而没有存储对应的数据符合题意，BC也符合视图的语法，而删除视图应该使用DROP VIEW进行，故选D</p>
<hr>
<h2 id="DDL、DML、DQL"><a href="#DDL、DML、DQL" class="headerlink" title="DDL、DML、DQL"></a><strong>DDL、DML、DQL</strong></h2><p>DDL(Data Definition Language)用来定义数据库对象；</p>
<p>DML(Data Manipulation Language)用来对数据库中的表进行增删改操作；</p>
<p>DQL(Data Query Language)用来查询数据库中表的记录； DCL(Data Control Language)用来定义数据库的访问控制权限和安全级别；</p>
<hr>
<h2 id="下列选项关于游标的作用叙述正确的是（）"><a href="#下列选项关于游标的作用叙述正确的是（）" class="headerlink" title="下列选项关于游标的作用叙述正确的是（）"></a><strong>下列选项关于游标的作用叙述正确的是（）</strong></h2><p>A. 不允许定位在结果集的特定行</p>
<p>B. 从结果集的目标位置检索一行或一部分行</p>
<p>C. 不支持对结果集中当前位置的行进行数据修改</p>
<p>D. 为由其他用户对显示在结果集中的数据所做的更改提供不同级别的可见性支持</p>
<p>解析：游标是一种从包括多条数据记录的结果集中每次提取一条记录以便处理的机制，可以看做是查询结果的记录指针。A选项，游标允许定位在结果集的特定行；B选项，从结果集的当前位置检索一行或一部分行；C选项，支持对结果集中当前位置的行进行数据修改。</p>
<hr>
<h2 id="下列关于SQL-Server中使用存储过程的优点叙述不正确的是（）"><a href="#下列关于SQL-Server中使用存储过程的优点叙述不正确的是（）" class="headerlink" title="下列关于SQL Server中使用存储过程的优点叙述不正确的是（）"></a><strong>下列关于SQL Server中使用存储过程的优点叙述不正确的是（）</strong></h2><p>A. 执行速度快</p>
<p>B. 封装复杂操作</p>
<p>C. 允许模块化程序设计</p>
<p>D. 增加网络流量</p>
<p>解析：存储过程包含很多行SQL语句，但在客户机调用存储过程时，网络中只要传送调用存储过程的语句，而无需在网络中发送很多行代码，减少了网络流量，特别是大型、复杂的数据处理，存储过程无需将中间结果集送回客户机，只要发送最终结果。</p>
<hr>
<h2 id="窗口函数"><a href="#窗口函数" class="headerlink" title="窗口函数"></a><strong>窗口函数</strong></h2><p>窗口函数：<br>over()窗口函数的语法结构<strong>及常与over()一起使用的分析函数</strong></p>
<p>1、over()窗口函数的语法结构</p>
<p>2、常与over()一起使用的分析函数</p>
<p>1、over()窗口函数的语法结构</p>
<p>over()函数中包括三个函数：分区partition by 列名、排序order by 列名、指定窗口范围rows between 开始位置 and 结束位置（可用\可以不用）<br>若over()函数中不使用这三个函数，窗口大小是针对查询产生的所有数据，如果指定了分区，窗口大小是针对每个分区的数据。</p>
<p><strong>partition by</strong></p>
<p>partition by可理解为group by 分组。over(partition by 列名)搭配分析函数时，分析函数按照每一组每一组的数据进行计算的。</p>
<p><strong>B、rows between 开始位置 and 结束位置</strong><br>是指定窗口范围，比如第一行到当前行。而这个范围是随着数据变化的。over(rows between 开始位置 and 结束位置)搭配分析函数时，分析函数按照这个范围进行计算的。</p>
<p>2、常与over()一起使用的分析函数：</p>
<p>2.1、聚合类</p>
<p><strong>avg()、sum()、max()、min()</strong></p>
<p>2.1、排名类</p>
<p><strong>rank()</strong> 按照值排序时产生一个自增编号，值相等时会重复，会产生空位（如：1、3、3、6、9）</p>
<p><strong>dense_rank()</strong> 按照值排序时产生一个自增编号，值相等时会重复，不会产生空位（如：1、2、2、3、3、4）</p>
<p><strong>row_number()</strong> 按照值排序时产生一个自增编号，不会重复（如：1、2、3、4、5、6）</p>
<h2 id="临时表"><a href="#临时表" class="headerlink" title="临时表"></a><strong>临时表</strong></h2><p>在查询过程中创建的临时表需要命名，命名就需要使用AS<br>例如：<br><figure class="highlight n1ql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">SELECT</span> mark <span class="keyword">FROM</span> (</span><br><span class="line"></span><br><span class="line"><span class="keyword">SELECT</span> mark,<span class="built_in">COUNT</span>(mark) <span class="keyword">AS</span> num</span><br><span class="line"></span><br><span class="line"><span class="keyword">FROM</span> grade</span><br><span class="line"></span><br><span class="line"><span class="keyword">GROUP</span> <span class="keyword">BY</span> mark</span><br><span class="line"></span><br><span class="line">) <span class="keyword">AS</span> STATISTIC</span><br><span class="line"></span><br><span class="line"><span class="keyword">WHERE</span> num&gt;<span class="number">1</span></span><br></pre></td></tr></table></figure><br>AS不能省略</p>
<hr>
<h2 id="SELECT-COALESCE（NULL，fat，2）AS-name1，COALESCE（pig，test，test）AS-name2-FROM-NAMETABLE；以上SQL执行后name1和name2分别为多少"><a href="#SELECT-COALESCE（NULL，fat，2）AS-name1，COALESCE（pig，test，test）AS-name2-FROM-NAMETABLE；以上SQL执行后name1和name2分别为多少" class="headerlink" title="SELECT COALESCE（NULL，fat，2）AS name1，COALESCE（pig，test，test）AS name2 FROM NAMETABLE；以上SQL执行后name1和name2分别为多少"></a><strong>SELECT COALESCE（NULL，fat，2）AS name1，COALESCE（pig，test，test）AS name2 FROM NAMETABLE；以上SQL执行后name1和name2分别为多少</strong></h2><p>A. NULL，pig</p>
<p>B. 2，test</p>
<p>C. fat，pig</p>
<p>D. null，test</p>
<p>解析：本题主要考察COALESCE函数</p>
<p>COALESCE ( expression,value1,value2……) </p>
<p>COALESCE()函数的第一个参数expression为待检测的表达式，而其后的参数个数不定。</p>
<p>COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式。</p>
<p>如果expression不为空值则返回expression；否则判断value1是否是空值，</p>
<p>如果value1不为空值则返回value1；否则判断value2是否是空值，</p>
<p>如果value2不为空值则返回value2；</p>
<p>……</p>
<p>如果所有的表达式都为空值，则返回NULL。</p>
<hr>
<h2 id="datediff日期函数"><a href="#datediff日期函数" class="headerlink" title="datediff日期函数"></a><strong>datediff日期函数</strong></h2><p>关于日期函数，datediff(日期1，日期2)，得到的结果是日期一与日期二相差的天数，若日期1大于日期2，结果为正，否则结果为负。本题中关键词为前一天，即d2.date应大于d1.date所得结果应为正值。</p>
<hr>
<h2 id="Mysql中表student-table-id-name-birth-sex-，插入如下记录：-2"><a href="#Mysql中表student-table-id-name-birth-sex-，插入如下记录：-2" class="headerlink" title="Mysql中表student_table(id,name,birth,sex)，插入如下记录："></a><strong>Mysql中表student_table(id,name,birth,sex)，插入如下记录：</strong></h2><p><strong>(‘1001’ , ‘’ , ‘2000-01-01’ , ‘男’);</strong><br><strong>(‘1002’ , null , ‘2000-12-21’ , ‘男’);</strong><br><strong>(‘1003’ , NULL , ‘2000-05-20’ , ‘男’);</strong><br><strong>(‘1004’ , ‘张三’ , ‘2000-08-06’ , ‘男’);</strong><br><strong>(‘1005’ , ‘李四’ , ‘2001-12-01’ , ‘女’);</strong><br><strong>执行 select count(name) from student_table 的结果是（）？</strong></p>
<p>A. 5</p>
<p>B. 4</p>
<p>C. 3</p>
<p>D. 2</p>
<p>解析：</p>
<p>count(name) 时不包括null值，所以结果是3；</p>
<p>插入时null与NULL的意思一样都是NULL。</p>
<p>‘’ 这种只是没有实际的值，不是null（空），也是可以查询出来的</p>
<p>count()函数有两种使用方式：1、使用count(*)对表中的行数进行计数，此种用法不忽略null值；2、使用count(column)对特定列中具有值的行进行计数，此种用法忽略null值。</p>
<hr>
<h2 id="关于返回受上一个SQL语句影响的行数，下列SQL语句正确的是（）"><a href="#关于返回受上一个SQL语句影响的行数，下列SQL语句正确的是（）" class="headerlink" title="关于返回受上一个SQL语句影响的行数，下列SQL语句正确的是（）"></a><strong>关于返回受上一个SQL语句影响的行数，下列SQL语句正确的是（）</strong></h2><p>A. SELECT @@ERROR</p>
<p>B. SELECT @@IDENTITY</p>
<p>C. SELECT @@ROWCOUNT</p>
<p>D. SELECT @@MAX_CONNECTIONS</p>
<p>解析：</p>
<p>@@ERROR：返回执行的上一个 Transact-SQLTransact-SQL 语句的错误号。</p>
<p>@@IDENTITY：返回自增id。</p>
<p>@@ROWCOUNT：返回受上一个SQL语句影响的行数。</p>
<p>@@MAX_CONNECTIONS：返回最大用户连接数。</p>
<hr>
<h2 id="Rank-函数"><a href="#Rank-函数" class="headerlink" title="Rank()函数"></a><strong>Rank()函数</strong></h2><p>Rank()函数：为结果集分区中每一行分配一个排名，行等级由一加上前面的等级指定。</p>
<figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">RANK（） <span class="keyword">OVER</span>（</span><br><span class="line">        <span class="keyword">PARTITION</span> <span class="keyword">BY</span>　表达式      ##将结果集划分为分区</span><br><span class="line">        <span class="keyword">ORDER</span> <span class="keyword">BY</span>　表达式　［<span class="keyword">ASC</span>｜<span class="keyword">DESC</span>］ ##对分区内的进行排序</span><br><span class="line">）</span><br></pre></td></tr></table></figure>
<p>在这个语法中：</p>
<p>首先，PARTITION BY子句将结果集划分为分区。RANK()功能在分区内执行，并在跨越分区边界时重新初始化。</p>
<p>其次，ORDER BY子句按一个或多个列或表达式对分区内的行进行排序。</p>
<p>参考：<a target="_blank" rel="noopener" href="https://www.begtut.com/mysql/mysql-rank-function.html">https://www.begtut.com/mysql/mysql-rank-function.html</a></p>
<h2 id="字符串索引"><a href="#字符串索引" class="headerlink" title="字符串索引"></a><strong>字符串索引</strong></h2><h3 id="查询显示雇员的姓名和姓名中是否含有字母A的信息，满足如下条件"><a href="#查询显示雇员的姓名和姓名中是否含有字母A的信息，满足如下条件" class="headerlink" title="查询显示雇员的姓名和姓名中是否含有字母A的信息，满足如下条件"></a><strong>查询显示雇员的姓名和姓名中是否含有字母A的信息，满足如下条件</strong></h3><p><strong>如果字符A在姓名的首位，则显示’字符A在首位’</strong><br><strong>如果字符A在姓名的末位，则显示’字符A在末位’</strong><br><strong>如果字符A在姓名中不存在，则显示’没有字符A’</strong><br><strong>其他情况显示’字符A在中间’</strong><br><strong>下列操作语句正确的是：（）</strong></p>
<p>A.<br><figure class="highlight csharp"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span> ename, <span class="function"><span class="keyword">case</span>  <span class="title">charindex</span>(<span class="params">‘A‘,ename</span>)</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘字符A在首位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> <span class="title">len</span>(<span class="params">ename</span>) then</span></span><br><span class="line"><span class="function">‘字符A在末位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘没有字符A‘</span></span><br><span class="line"><span class="function"><span class="keyword">else</span> ‘字符A在中间‘</span></span><br><span class="line"><span class="function">end 名称类别   <span class="keyword">from</span> emp</span>;</span><br></pre></td></tr></table></figure></p>
<p>B.<br><figure class="highlight csharp"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span> ename, <span class="function"><span class="keyword">case</span>  <span class="title">charindex</span>(<span class="params">‘A‘,ename</span>)</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 1 then ‘字符A在首位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> <span class="title">len</span>(<span class="params">ename</span>)+1 then</span></span><br><span class="line"><span class="function">‘字符A在末位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘没有字符A‘</span></span><br><span class="line"><span class="function"><span class="keyword">else</span> ‘字符A在中间‘</span></span><br><span class="line"><span class="function">end 名称类别   <span class="keyword">from</span> emp</span>;</span><br></pre></td></tr></table></figure></p>
<p>C.<br><figure class="highlight csharp"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span> ename, <span class="function"><span class="keyword">case</span>  <span class="title">charindex</span>(<span class="params">‘A‘,ename</span>)</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 1 then ‘字符A在首位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> <span class="title">len</span>(<span class="params">ename</span>) then</span></span><br><span class="line"><span class="function">‘字符A在末位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘没有字符A‘</span></span><br><span class="line"><span class="function"><span class="keyword">else</span> ‘字符A在中间‘</span></span><br><span class="line"><span class="function">end 名称类别   <span class="keyword">from</span> emp</span>;</span><br></pre></td></tr></table></figure></p>
<p>D.<br><figure class="highlight csharp"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span> ename, <span class="function"><span class="keyword">case</span>  <span class="title">charindex</span>(<span class="params">‘A‘,ename</span>)</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘字符A在首位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> <span class="title">len</span>(<span class="params">ename</span>)+1 then</span></span><br><span class="line"><span class="function">‘字符A在末位‘</span></span><br><span class="line"><span class="function"><span class="keyword">when</span> 0 then ‘没有字符A‘</span></span><br><span class="line"><span class="function"><span class="keyword">else</span> ‘字符A在中间‘</span></span><br><span class="line"><span class="function">end 名称类别   <span class="keyword">from</span> emp</span>;</span><br></pre></td></tr></table></figure></p>
<p>解析：</p>
<p>数据库中,字符串的索引,开始于1。</p>
<p>charindex（用于判断一个字符串中是否包含另一个字符串）</p>
<p>基本语法如下：<br><figure class="highlight asciidoc"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">CHARINDEX ( expressionToFind , expressionToSearch [ , start<span class="emphasis">_location ] )</span></span><br><span class="line"><span class="emphasis">    expressionToFind ：目标字符串，就是想要找到的字符串，最大长度为8000 。</span></span><br><span class="line"><span class="emphasis">expressionToSearch ：用于被查找的字符串。</span></span><br><span class="line"><span class="emphasis">    start_</span>location：开始查找的位置，为空时默认从第一位开始查找。</span><br></pre></td></tr></table></figure></p>
<hr>
<h2 id="STUFF函数"><a href="#STUFF函数" class="headerlink" title="STUFF函数"></a><strong>STUFF函数</strong></h2><p>STUFF(原字符, 开始位置, 删除长度, 插入字符)</p>
<p>从指定的起点处开始删除指定长度的字符，并在此处插入另一组字符</p>
<h2 id="下列选项中关于数据库事务的特性描述正确的是（）"><a href="#下列选项中关于数据库事务的特性描述正确的是（）" class="headerlink" title="下列选项中关于数据库事务的特性描述正确的是（）"></a><strong>下列选项中关于数据库事务的特性描述正确的是（）</strong></h2><p>A. 事务允许继续分割</p>
<p>B. 多个事务在执行事务前后对同一个数据读取的结果是不同的</p>
<p>C. 一个事务对数据库中数据的改变是暂时的</p>
<p>D. 并发访问数据库时，各并发事务之间数据库是独立的</p>
<p>解析：</p>
<p>此题考查数据库事务的原子性、一致性、隔离性和持久性。</p>
<p>A选项，事务是最小的执行单位，不允许分割；</p>
<p>B选项，执行事务前后，数据保持一致，对同一数据读取的结果相同；</p>
<p>C选项，一个事务被提交后对数据库中数据的改变是持久的。</p>
<p>事务隔离性存在隔离级别。理论存在4个级别。读未提交，读已提交。可重复读。序列化（串行化）。</p>
<p>读未提交：会导致脏读、不可重复读取、幻读问题。脏读（即一个事务读取了另一个事务未提交的数据）。</p>
<p>不可重复读（一个事务还未提交。读取了另一个事务使用update和delete语句后。提交的数据。产生了不同的结果集，这种现象称为。不可以重复读取。）。</p>
<p>幻读（同一个查询还未提交。读取了另一个事务使用insert语句后。且提交后。产生了不同的结果集。这种现象称为。幻读）。</p>
<p>读已提交：会导致 不可重复读和幻读问题。解决了脏读。</p>
<p>可重复读取：解决了上述，三个问题不加锁。msyql innodb(默认第三种隔离级别)</p>
<p>序列化：也解决了上述，三个问题。但是使用了锁的方式。</p>
<h2 id="事务的特点-ACID"><a href="#事务的特点-ACID" class="headerlink" title="事务的特点(ACID)"></a><strong>事务的特点(ACID)</strong></h2><ul>
<li><p>A 原子性：一个事务是不可再分割的整体，要么都执行要么都不执行</p>
</li>
<li><p>C 一致性：一个事务可以使数据从一个一致状态切换到另外一个一致的状态</p>
</li>
<li><p>I 隔离性：一个事务不受其他事务的干扰，多个事务互相隔离的</p>
</li>
<li><p>D 持久性：一个事务一旦提交了，则永久的持久化到本地</p>
</li>
</ul>
<hr>
<h2 id="下列选项关于函数的描述正确的是（）"><a href="#下列选项关于函数的描述正确的是（）" class="headerlink" title="下列选项关于函数的描述正确的是（）"></a><strong>下列选项关于函数的描述正确的是（）</strong></h2><p>A. 用户定义函数可以用于执行修改数据库状态的操作</p>
<p>B. 用户定义函数属于数据库，可以在多个数据库下调用</p>
<p>C. 与系统函数一样，用户定义函数可以从查询中调用</p>
<p>D. 标量函数不可使用EXECUTE语句执行</p>
<p>解析：A选项，用户定义函数不用于执行修改数据库状态的操作；B选项，用户定义函数属于数据库，只能在该数据库下调用；D选项，标量函数和存储过程一样，可以使用EXECUTE语句执行。</p>
<hr>
<h2 id="游标的INSENSITIVE参数"><a href="#游标的INSENSITIVE参数" class="headerlink" title="游标的INSENSITIVE参数"></a><strong>游标的INSENSITIVE参数</strong></h2><p>INSENSITIVE</p>
<p>表明MS SQL SERVER 会将游标定义所选取出来的数据记录存放在一临时表内（建立在tempdb 数据库下）。对该游标的读取操作皆由临时表来应答。因此，对基本表的修改并不影响游标提取的数据，即游标不会随着基本表内容的改变而改变，同时也无法通过<br>游标来更新基本表。如果不使用该保留字，那么对基本表的更新、删除都会反映到游标中。</p>
<p>当遇到以下情况发生时，游标将自动设定INSENSITIVE 选项。</p>
<p>在SELECT 语句中使用DISTINCT、 GROUP BY、 HAVING UNION 语句；</p>
<p>使用OUTER JOIN；</p>
<p>所选取的任意表没有索引；</p>
<p>将实数值当作选取的列</p>
<h2 id="下面有关sql-语句中-delete、truncate的说法正确的是？（）"><a href="#下面有关sql-语句中-delete、truncate的说法正确的是？（）" class="headerlink" title="下面有关sql 语句中 delete、truncate的说法正确的是？（）"></a><strong>下面有关sql 语句中 delete、truncate的说法正确的是？（）</strong></h2><p>A. 论清理表数据的速度，truncate一般比delete更快</p>
<p>B. truncate命令可以用来删除部分数据。</p>
<p>C. truncate只删除表的数据不删除表的结构</p>
<p>D. delete能够回收高水位(自增ID值)</p>
<p>解析：</p>
<ol>
<li><p>处理效率：drop&gt;trustcate&gt;delete</p>
</li>
<li><p>删除范围：drop删除整个表（结构和数据一起删除）；trustcate删除全部记录，但不删除表结构；delete只删除数据</p>
</li>
<li><p>高水位线：delete不影响自增ID值，高水线保持原位置不动；trustcate会将高水线复位，自增ID变为1。</p>
</li>
</ol>
<h2 id="在SQL中语法规范中，having子句的使用下面描述正确的是：（-）"><a href="#在SQL中语法规范中，having子句的使用下面描述正确的是：（-）" class="headerlink" title="在SQL中语法规范中，having子句的使用下面描述正确的是：（    ）"></a><strong>在SQL中语法规范中，having子句的使用下面描述正确的是：（    ）</strong></h2><p>A. having子句即可包含聚合函数作用的字段也可包括普通的标量字段</p>
<p>B. 使用having的同时不能使用where子句</p>
<p>C. having子句必须于group by 子句同时使用，不能单独使用</p>
<p>D. 使用having子句的作用是限定分组条件</p>
<p>E. Having子句和where子句是等同的</p>
<p>F. 如果select语句中没有聚合函数的使用，就不能使用having子句</p>
<p>解析：</p>
<p>having是在分组后过滤，where在分组前过滤，不冲突，可以同时使用，BE错；</p>
<p>having是用来过滤的，group by是限定分组，D错；</p>
<p><strong>select语句中没有聚合函数的使用时也可以用having，F错</strong></p>
<hr>
<h2 id="lt-gt-符号"><a href="#lt-gt-符号" class="headerlink" title="&lt;&gt;符号"></a><strong>&lt;&gt;符号</strong></h2><p>select * from student_table  where id  in (<br>select stu_id from score_table where subject_name &lt;&gt; ‘英语’);</p>
<p>其中&lt;&gt;符号表示subject_name不等于英语条件。</p>
<h2 id="ROUND-函数和TRUNCATE-函数"><a href="#ROUND-函数和TRUNCATE-函数" class="headerlink" title="ROUND()函数和TRUNCATE()函数"></a><strong>ROUND()函数和TRUNCATE()函数</strong></h2><p>TRUNCATE函数将expr按照int_expr长度在小数点后按照位数直接进行截取。</p>
<p>实例：</p>
<p>SELECT TRUNCATE(200.12567,4);</p>
<p>输出结果：200.1256</p>
<p>ROUND(expr, int_expr)用法</p>
<p>ROUND函数将expr按照int_expr长度在小数点后按照位数进行四舍五入截取。</p>
<p>实例：</p>
<p>SELECT ROUND(200.12567,4);</p>
<p>输出结果：200.1567</p>
<hr>
<h2 id="union用法"><a href="#union用法" class="headerlink" title="union用法"></a><strong>union用法</strong></h2><p>使用where<br><figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span></span><br><span class="line"><span class="type">name</span>,population,area</span><br><span class="line"><span class="keyword">from</span> World</span><br><span class="line"><span class="keyword">where</span></span><br><span class="line">area&gt;<span class="number">3000000</span></span><br><span class="line"><span class="keyword">or</span> </span><br><span class="line">population&gt;<span class="number">25000000</span></span><br><span class="line">;</span><br></pre></td></tr></table></figure><br>使用union<br><figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">select</span></span><br><span class="line"><span class="type">name</span>,population,area</span><br><span class="line"><span class="keyword">from</span> World</span><br><span class="line"><span class="keyword">where</span></span><br><span class="line">area&gt;<span class="number">3000000</span></span><br><span class="line"><span class="keyword">union</span></span><br><span class="line"><span class="keyword">select</span></span><br><span class="line"><span class="type">name</span>,population,area</span><br><span class="line"><span class="keyword">from</span> World</span><br><span class="line"><span class="keyword">where</span></span><br><span class="line">population&gt;<span class="number">25000000</span></span><br><span class="line">;</span><br></pre></td></tr></table></figure></p>
<p>使用 union 的速度比where要快</p>
<p>使用union的注意规则：</p>
<p>1.UNION必须由两条以上的SELECT语句组成，语句之间用关键字UNION分割。</p>
<p>2.UNION中的每个查询必须包含相同的列、表达式或聚集函数（各个列不需要以相同的次序列出）。</p>
<p>3.列数据类型必须兼容：类型不必完全相同，但必须是DBMS可以隐含地转换的类型。</p>
<p>4.如果取出来的数据不需要去重，使用UNION ALL。</p>
<hr>
<h2 id="Charindex-、SubString-、Stuff-、Soundex-函数"><a href="#Charindex-、SubString-、Stuff-、Soundex-函数" class="headerlink" title="Charindex()、SubString()、Stuff()、Soundex()函数"></a><strong>Charindex()、SubString()、Stuff()、Soundex()函数</strong></h2><p>Charindex()返回字符或字符串在另一个字符的起始位置CHARINDEX(查找字符，被查字符，开始位置)</p>
<p>SubString()截取字符串中的一部分字符。SUBSTRING（字符串，开始位置，截取长度）</p>
<p>Stuff()删除指定长度的字符，并在指定的起点处插入另一组字符。STUFF(列名,开始位置,长度,替代字符串)</p>
<p>Soundex()返回表示字符串声音的一串字符</p>
<h2 id="RENAME、MODIFY、ALTER、CHANGE的用法"><a href="#RENAME、MODIFY、ALTER、CHANGE的用法" class="headerlink" title="RENAME、MODIFY、ALTER、CHANGE的用法"></a><strong>RENAME、MODIFY、ALTER、CHANGE的用法</strong></h2><p>RENAME用于表的重命名：RENAME  <NAME> 或  RENAME  TO  <NAME></NAME></NAME></p>
<p>MODIFY用于字段类型的修改：MODIFY  COLUMN   &lt;列名&gt;  &lt;类型&gt;</p>
<p>ALTER用于对字段类型、默认值的修改：ALTER  COLUMN  &lt;列名&gt;  &lt;类型&gt;    SET  DE<em>*</em>T  &lt;默认值&gt;</p>
<p>CHANGE用于对列名及类型的修改：CHANGE  COLUMN  &lt;旧列名&gt;  &lt;新列名&gt;  &lt;类型&gt;</p>
<figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">ALTER</span> <span class="keyword">TABLE</span> employee <span class="keyword">RENAME</span>  employee_info;</span><br></pre></td></tr></table></figure>
<h2 id="Mysql-版本8-0-25-不支持full-join"><a href="#Mysql-版本8-0-25-不支持full-join" class="headerlink" title="Mysql(版本8.0.25)不支持full join"></a><strong>Mysql(版本8.0.25)不支持full join</strong></h2><h2 id="在SQL中如何删除触发器？"><a href="#在SQL中如何删除触发器？" class="headerlink" title="在SQL中如何删除触发器？"></a><strong>在SQL中如何删除触发器？</strong></h2><figure class="highlight n1ql"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">DROP</span> <span class="keyword">TRIGGER</span> 触发器名称</span><br></pre></td></tr></table></figure>
<h2 id="已知某期刊信息库中有作家信息表author（作者编号aid，作者姓名aname，作者笔名ausername，作者邮箱aemail，备注remarks），稿件表manuscript（稿件编号mid，标题mtitle，作者编号aid，交稿时间mtime）现需要设置外键作者编号，下列语句正确的是（B）"><a href="#已知某期刊信息库中有作家信息表author（作者编号aid，作者姓名aname，作者笔名ausername，作者邮箱aemail，备注remarks），稿件表manuscript（稿件编号mid，标题mtitle，作者编号aid，交稿时间mtime）现需要设置外键作者编号，下列语句正确的是（B）" class="headerlink" title="已知某期刊信息库中有作家信息表author（作者编号aid，作者姓名aname，作者笔名ausername，作者邮箱aemail，备注remarks），稿件表manuscript（稿件编号mid，标题mtitle，作者编号aid，交稿时间mtime）现需要设置外键作者编号，下列语句正确的是（B）"></a><strong>已知某期刊信息库中有作家信息表author（作者编号aid，作者姓名aname，作者笔名ausername，作者邮箱aemail，备注remarks），稿件表manuscript（稿件编号mid，标题mtitle，作者编号aid，交稿时间mtime）现需要设置外键作者编号，下列语句正确的是（B）</strong></h2><p>A. </p>
<figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">ALTER</span> <span class="keyword">TABLE</span> manuscript</span><br><span class="line"><span class="keyword">ADD</span> <span class="keyword">CONSTRAINT</span> FK_aid</span><br><span class="line"><span class="keyword">FOREIGN KEY</span>  (aid) <span class="keyword">REFERENCES</span> author (aid)</span><br></pre></td></tr></table></figure>
<p>B.<br><figure class="highlight pgsql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">ALTER</span> <span class="keyword">TABLE</span> manuscript</span><br><span class="line"><span class="keyword">ADD</span> <span class="keyword">CONSTRAINT</span> FK_aid</span><br><span class="line"><span class="keyword">FOREIGN KEY</span>  (manuscript.aid) <span class="keyword">REFERENCES</span> author (aid)</span><br></pre></td></tr></table></figure></p>
<p>C.<br><figure class="highlight sas"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">ALTER</span> <span class="keyword">TABLE</span> manuscript</span><br><span class="line"><span class="keyword">ADD</span> <span class="keyword">FOREIGN</span> <span class="keyword">KEY</span>  (manuscript.aid)</span><br><span class="line"><span class="keyword">REFERENCES</span> author (aid)</span><br></pre></td></tr></table></figure></p>
<p>D.<br><figure class="highlight sas"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">ALTER</span> <span class="keyword">TABLE</span> manuscript</span><br><span class="line"><span class="keyword">ADD</span> <span class="keyword">FOREIGN</span> <span class="keyword">KEY</span>  (aid)</span><br><span class="line"><span class="keyword">REFERENCES</span> author (aid)</span><br></pre></td></tr></table></figure></p>
<h2 id="关于MySQL常见索引的描述正确是（C）"><a href="#关于MySQL常见索引的描述正确是（C）" class="headerlink" title="关于MySQL常见索引的描述正确是（C）"></a><strong>关于MySQL常见索引的描述正确是（C）</strong></h2><p>A. 创建UNIQUE索引，索引列的值必须唯一，不允许有空值</p>
<p>B. 一个表中可以创建多个全文索引</p>
<p>C. 为提高效率可建立组合索引，遵循“最左前缀”原则</p>
<p>D. 使用非聚集索引需要将物理数据页中的数据按列重新排序</p>
<p>解析：</p>
<p>A选项，唯一索引不允许两行具有相同的索引值，包括NULL值，允许有空值；</p>
<p>B选项，每个表只允许有一个全文索引；</p>
<p>D选项，非聚集索引具有完全独立于数据行的结构，所以不需要将物理数据页中的数据按列重新排序。</p>
<h2 id="数据库备份"><a href="#数据库备份" class="headerlink" title="数据库备份"></a><strong>数据库备份</strong></h2><p>1、完全备份</p>
<p>这可能是大多数人常用的方式，它可以备份整个数据库，包含用户表、系统表、索引、视图和存储过程等所有数据库对象。但是呢，它也需要花费更多的时间和空间，所以，一般推荐一周做一次完全备份。</p>
<p>2、事务日志备份</p>
<p>事务日志是一个单独的文件，它记录数据库的改变，备份的时候只需要复制自上次备份以来对数据库所做的改变，所以只需要很少的时间。为了使数据库具有鲁棒性，推荐每小时甚至更频繁的备份事务日志。</p>
<p>3、差异备份</p>
<p>也叫增量备份。它是只备份数据库一部分的另一种方法，它不使用事务日志，相反，它使用整个数据库的一种新映象。它比最初的完全备份小，因为它只包含自上次完全备份以来所改变的数据库。它的优点是存储和恢复速度快。推荐每天做一次差异备份。</p>
<p>4、文件备份</p>
<p>数据库可以由硬盘上的许多文件构成。如果这个数据库非常大，并且一个晚上也不能将它备份完，那么可以使用文件备份每晚备份数据库的一部分。由于一般情况下数据库不会大到必须使用多个文件存储，所以这种备份不是很常用</p>
<h2 id="if函数"><a href="#if函数" class="headerlink" title="if函数"></a><strong>if函数</strong></h2><figure class="highlight angelscript"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line">select sno,</span><br><span class="line">sum(<span class="keyword">if</span>(<span class="keyword">class</span>=&#x27;<span class="symbol">english</span>&#x27;,<span class="symbol">score,<span class="symbol">0</span></span>)) <span class="symbol">as</span> <span class="symbol">english,</span></span><br><span class="line"><span class="symbol"><span class="symbol">sum</span></span>( <span class="symbol">if</span>(<span class="symbol">class</span>=&#x27;<span class="symbol">math</span>&#x27;,<span class="symbol">score,<span class="symbol">0</span></span>) ) <span class="symbol">as</span> <span class="symbol">math</span></span><br><span class="line"><span class="symbol">from</span> <span class="symbol">sc</span></span><br><span class="line"><span class="symbol">where</span> <span class="symbol">class</span> <span class="symbol">in</span>(&#x27;<span class="symbol">english</span>&#x27;,&#x27;<span class="symbol">math</span>&#x27;)</span><br><span class="line"><span class="symbol">group</span> <span class="symbol">by</span> <span class="symbol">sno</span></span><br></pre></td></tr></table></figure>
<h2 id="视图是一种数据库对象，是从数据库的表或其他视图中导出的基表？"><a href="#视图是一种数据库对象，是从数据库的表或其他视图中导出的基表？" class="headerlink" title="视图是一种数据库对象，是从数据库的表或其他视图中导出的基表？"></a><strong>视图是一种数据库对象，是从数据库的表或其他视图中导出的基表？</strong></h2><p>视图是虚拟表，是一个依赖于别的表上的寄生表，其本身不存储数据，对视图的操作最终都会转化为对基本表的操作。所以说视图不能是从其他视图导出的</p>
<h2 id="SUM-函数的加一操作和COUNT-函数计数操作"><a href="#SUM-函数的加一操作和COUNT-函数计数操作" class="headerlink" title="SUM()函数的加一操作和COUNT()函数计数操作"></a><strong>SUM()函数的加一操作和COUNT()函数计数操作</strong></h2><p>使用SUM函数，满足条件就计1，不满足就计0</p>
<p>使用COUNT函数，是计的返回的条数，不管返回的是0、1还是2，都会计1</p>
<h2 id="索引"><a href="#索引" class="headerlink" title="索引"></a><strong>索引</strong></h2><p>索引滥用会降低更新表的速度，更新表时，MySQL不仅要更新数据，保存数据，还要更新索引，保存索引，索引会占用磁盘空间。</p>
<p>所以索引虽然提高了查询速度，但不会提高更新表的速度，甚至还会减慢表的速度</p>
<p>数据库索引采用B+树是因为B+树在提高了磁盘IO性能的同时解决了元素遍历效率低下的问题</p>
<p>如果WHERE子句中使用了索引，那么ORDER BY子句中不会使用索引</p>
<h2 id="事务和并发控制"><a href="#事务和并发控制" class="headerlink" title="事务和并发控制"></a><strong>事务和并发控制</strong></h2><p>并发控制机制的好坏是衡量一个数据库管理系统性能的重要标志之一</p>
<p>可串行性是判断并发事务是否正确的准则</p>
<p>事务的隔离级别越高，并发能力也就越低</p>
<p>SQL Server中每一条select、insert、update、delete语句都是隐形事务的一部分，显性事务用BEGIN TRANSACTION明确指定事务。</p>
<h2 id="视图"><a href="#视图" class="headerlink" title="视图"></a><strong>视图</strong></h2><p>视图可以被嵌套，一个视图中可以嵌套另一个视图</p>
<h2 id="假设牛客网上有一份绝密文件存于某台机器的secretData数据库中的某个表里面，现在出于数据安全的考虑，对于新创建的用户都只能拥有该机器的登录权限，而不能拥有数据库的其他权限，那么新创建nkw用户满足这一要求的语句是（）"><a href="#假设牛客网上有一份绝密文件存于某台机器的secretData数据库中的某个表里面，现在出于数据安全的考虑，对于新创建的用户都只能拥有该机器的登录权限，而不能拥有数据库的其他权限，那么新创建nkw用户满足这一要求的语句是（）" class="headerlink" title="假设牛客网上有一份绝密文件存于某台机器的secretData数据库中的某个表里面，现在出于数据安全的考虑，对于新创建的用户都只能拥有该机器的登录权限，而不能拥有数据库的其他权限，那么新创建nkw用户满足这一要求的语句是（）"></a><strong>假设牛客网上有一份绝密文件存于某台机器的secretData数据库中的某个表里面，现在出于数据安全的考虑，对于新创建的用户都只能拥有该机器的登录权限，而不能拥有数据库的其他权限，那么新创建nkw用户满足这一要求的语句是（）</strong></h2><p>A. grant usage on <em>.</em> with ‘nkw’@’%’;</p>
<p>B. grant usage on secretData.* to ‘nkw’@’%’;</p>
<p>C. grant usage on secretData.* with ‘nkw’@’%’;</p>
<p>D. grant usage on <em>.</em> to ‘nkw’@’%’;</p>
<p>解析：grant usage on <em>.</em> to ‘nkw’@’%’;授权的用户对该机器下的下的所有数据库下的所有表有登录权限</p>
<p>给数据库赋予登录权限的语句是grant usage on … to。因此答案A、C都不正确。题目中只说secretData数据库中的某个表有绝密文件，但是对新创建的用户可拥有登录权限，而没有其他权限。并没有说只对secretData数据库，因此题目引入该数据库只是一个干扰信息，所以答案B错误，因此答案选择D</p>
<h2 id="维护参照完整性约束的策略"><a href="#维护参照完整性约束的策略" class="headerlink" title="维护参照完整性约束的策略"></a><strong>维护参照完整性约束的策略</strong></h2><p>对于任何违反了参照完整性约束的数据更新，系统一概拒绝执行</p>
<p>当删除被参照表的一个元组造成了与参照表的不一致，则删除参照表中的所有造成不一致的元组</p>
<p>当删除或修改被参照表的一个元组造成了不一致，则将参照表中的所有造成和不一致的元组的对应属性设置为空值</p>
<p>参照完整性共分四种模式：不执行操作、级联、置空、设置默认值。</p>
<p>B选项对应级联操作，即主键列(被参照表)删除同时外键列(参照列)对应列也被删除；</p>
<p>C选项也对应级联操作，但应为修改外键列(参照表)中的数据；</p>
<p>D选项对应置空，即主键列数据删除或者修改时外键列对应数据被置为空值；</p>
<p>设置默认值模式为主键列的修改和删除使对应外键列数据被置为设定的默认值</p>
<h2 id="关于-lt-gt-也会将null值排除掉的问题"><a href="#关于-lt-gt-也会将null值排除掉的问题" class="headerlink" title="关于&lt;&gt;也会将null值排除掉的问题"></a><strong>关于&lt;&gt;也会将null值排除掉的问题</strong></h2><p>where name &lt;&gt; ‘张三’ 会把记录中name=NULL的值对应的记录排除掉，不止排除掉不等于张三的值。</p>

    </div>

    
    
    

      <footer class="post-footer">
          <div class="post-tags">
              <a href="/wang-cheng/tags/%E5%88%B7%E9%A2%98/" rel="tag"># 刷题</a>
          </div>

        


        
    <div class="post-nav">
      <div class="post-nav-item">
    <a href="/wang-cheng/2022/04/10/%E5%A4%9A%E7%BA%BF%E7%A8%8B/" rel="prev" title="多线程">
      <i class="fa fa-chevron-left"></i> 多线程
    </a></div>
      <div class="post-nav-item">
    <a href="/wang-cheng/2022/04/20/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C%E5%88%B7%E9%A2%98/" rel="next" title="计算机网络刷题">
      计算机网络刷题 <i class="fa fa-chevron-right"></i>
    </a></div>
    </div>
      </footer>
    
  </article>
  
  
  



          </div>
          

<script>
  window.addEventListener('tabs:register', () => {
    let { activeClass } = CONFIG.comments;
    if (CONFIG.comments.storage) {
      activeClass = localStorage.getItem('comments_active') || activeClass;
    }
    if (activeClass) {
      let activeTab = document.querySelector(`a[href="#comment-${activeClass}"]`);
      if (activeTab) {
        activeTab.click();
      }
    }
  });
  if (CONFIG.comments.storage) {
    window.addEventListener('tabs:click', event => {
      if (!event.target.matches('.tabs-comment .tab-content .tab-pane')) return;
      let commentClass = event.target.classList[1];
      localStorage.setItem('comments_active', commentClass);
    });
  }
</script>

        </div>
          
  
  <div class="toggle sidebar-toggle">
    <span class="toggle-line toggle-line-first"></span>
    <span class="toggle-line toggle-line-middle"></span>
    <span class="toggle-line toggle-line-last"></span>
  </div>

  <aside class="sidebar">
    <div class="sidebar-inner">

      <ul class="sidebar-nav motion-element">
        <li class="sidebar-nav-toc">
          文章目录
        </li>
        <li class="sidebar-nav-overview">
          站点概览
        </li>
      </ul>

      <!--noindex-->
      <div class="post-toc-wrap sidebar-panel">
          <div class="post-toc motion-element"><ol class="nav"><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%AD%90%E6%9F%A5%E8%AF%A2%E4%B8%AD%EF%BC%8C%E7%88%B6%E6%9F%A5%E8%AF%A2%E4%B8%AD%E4%B8%80%E8%88%AC%E4%BD%BF%E7%94%A8IN%E8%BF%90%E7%AE%97%E7%AC%A6%E7%9A%84%E6%98%AF"><span class="nav-number">1.</span> <span class="nav-text">子查询中，父查询中一般使用IN运算符的是</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E4%B8%AD%E9%83%BD%E5%B1%9E%E4%BA%8E%E5%85%B3%E7%B3%BB%E4%BB%A3%E6%95%B0%E8%BF%90%E7%AE%97%E7%AC%A6%E4%B8%AD%E9%9B%86%E5%90%88%E8%BF%90%E7%AE%97%E7%AC%A6%E7%9A%84%E6%98%AF"><span class="nav-number">2.</span> <span class="nav-text">下列选项中都属于关系代数运算符中集合运算符的是</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E4%B8%AD%E4%B8%8D%E5%B1%9E%E4%BA%8E%E7%BB%93%E6%9E%84%E5%8C%96%E6%9F%A5%E8%AF%A2%E8%AF%AD%E8%A8%80%E7%9A%84%E7%BB%84%E6%88%90%E9%83%A8%E5%88%86%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">3.</span> <span class="nav-text">下列选项中不属于结构化查询语言的组成部分的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Mysql%E4%B8%AD%E8%A1%A8student-info-id-name-birth-sex-%EF%BC%8C%E5%AD%97%E6%AE%B5%E7%B1%BB%E5%9E%8B%E9%83%BD%E6%98%AFvarchar%EF%BC%8C%E6%8F%92%E5%85%A5%EF%BC%9A1018-%E8%B5%B5%E5%85%AD-2003-08-02-%E7%94%B7%EF%BC%9BSQL%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89%EF%BC%9F"><span class="nav-number">4.</span> <span class="nav-text">Mysql中表student_info(id,name,birth,sex)，字段类型都是varchar，插入：1018 , 赵六 , 2003-08-02 , 男；SQL正确的是（）？</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Mysql%E4%B8%AD%E8%A1%A8student-table-id-name-birth-sex-%EF%BC%8C%E6%8F%92%E5%85%A5%E5%A6%82%E4%B8%8B%E8%AE%B0%E5%BD%95%EF%BC%9A"><span class="nav-number">5.</span> <span class="nav-text">Mysql中表student_table(id,name,birth,sex)，插入如下记录：</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%8E%B0%E5%9C%A8%E6%9C%89%E4%B8%80%E4%B8%AA%E5%AD%A6%E7%94%9F%E8%A1%A8student%EF%BC%8C%E9%9C%80%E8%A6%81%E5%9B%9E%E6%94%B6%E6%89%80%E6%9C%89%E6%9C%BA%E5%99%A8%E7%9A%84nkw%E7%94%A8%E6%88%B7%E5%AF%B9%E5%AD%A6%E7%94%9F%E8%A1%A8student%E6%89%80%E5%9C%A8%E6%95%B0%E6%8D%AE%E5%BA%93user%E7%9A%84update%E5%92%8Cinsert%E6%9D%83%E9%99%90%EF%BC%8C%E5%88%99%E4%B8%8B%E5%88%97%E8%AF%AD%E5%8F%A5%E4%B8%AD%E8%83%BD%E5%A4%9F%E5%AE%9E%E7%8E%B0%E8%BF%99%E4%B8%80%E5%8A%9F%E8%83%BD%E7%9A%84%E8%AF%AD%E5%8F%A5%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">6.</span> <span class="nav-text">现在有一个学生表student，需要回收所有机器的nkw用户对学生表student所在数据库user的update和insert权限，则下列语句中能够实现这一功能的语句是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Mysql%E4%B8%AD%E8%A1%A8student-table-id-name-birth-sex-%EF%BC%8C%E6%8F%92%E5%85%A5%E5%A6%82%E4%B8%8B%E8%AE%B0%E5%BD%95%EF%BC%9A-1"><span class="nav-number">7.</span> <span class="nav-text">Mysql中表student_table(id,name,birth,sex)，插入如下记录：</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E9%9D%A2%E5%93%AA%E4%BA%9B%E5%AD%97%E7%AC%A6%E6%9C%80%E5%8F%AF%E8%83%BD%E4%BC%9A%E5%AF%BC%E8%87%B4sql%E6%B3%A8%E5%85%A5"><span class="nav-number">8.</span> <span class="nav-text">下面哪些字符最可能会导致sql注入?</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#ANY%E3%80%81ALL%E3%80%81Some%E7%9A%84%E7%94%A8%E6%B3%95"><span class="nav-number">9.</span> <span class="nav-text">ANY、ALL、Some的用法</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E6%89%B9%E5%A4%84%E7%90%86%E6%98%AF%E6%8C%87%E5%8C%85%E5%90%AB%E4%B8%80%E6%9D%A1%E6%88%96%E5%A4%9A%E6%9D%A1T-SQL%E8%AF%AD%E5%8F%A5%E7%9A%84%E8%AF%AD%E5%8F%A5%E7%BB%84%EF%BC%8C%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E4%B8%AD%EF%BC%8C%E5%85%B3%E4%BA%8E%E6%89%B9%E5%A4%84%E7%90%86%E7%9A%84%E8%A7%84%E5%88%99%E6%8F%8F%E8%BF%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">10.</span> <span class="nav-text">批处理是指包含一条或多条T-SQL语句的语句组，下列选项中，关于批处理的规则描述正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#MYSQL%E7%9A%84%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B%E5%92%8CSQL-Server%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B%E4%B8%8D%E5%90%8C"><span class="nav-number">11.</span> <span class="nav-text">MYSQL的存储过程和SQL Server存储过程不同</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E5%85%B3%E4%BA%8E%E8%A7%86%E5%9B%BE%E8%AF%B4%E6%B3%95%E9%94%99%E8%AF%AF%E7%9A%84%E6%98%AF%EF%BC%9F"><span class="nav-number">12.</span> <span class="nav-text">下列关于视图说法错误的是？</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#DDL%E3%80%81DML%E3%80%81DQL"><span class="nav-number">13.</span> <span class="nav-text">DDL、DML、DQL</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E5%85%B3%E4%BA%8E%E6%B8%B8%E6%A0%87%E7%9A%84%E4%BD%9C%E7%94%A8%E5%8F%99%E8%BF%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">14.</span> <span class="nav-text">下列选项关于游标的作用叙述正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E5%85%B3%E4%BA%8ESQL-Server%E4%B8%AD%E4%BD%BF%E7%94%A8%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B%E7%9A%84%E4%BC%98%E7%82%B9%E5%8F%99%E8%BF%B0%E4%B8%8D%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">15.</span> <span class="nav-text">下列关于SQL Server中使用存储过程的优点叙述不正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%AA%97%E5%8F%A3%E5%87%BD%E6%95%B0"><span class="nav-number">16.</span> <span class="nav-text">窗口函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%B4%E6%97%B6%E8%A1%A8"><span class="nav-number">17.</span> <span class="nav-text">临时表</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#SELECT-COALESCE%EF%BC%88NULL%EF%BC%8Cfat%EF%BC%8C2%EF%BC%89AS-name1%EF%BC%8CCOALESCE%EF%BC%88pig%EF%BC%8Ctest%EF%BC%8Ctest%EF%BC%89AS-name2-FROM-NAMETABLE%EF%BC%9B%E4%BB%A5%E4%B8%8ASQL%E6%89%A7%E8%A1%8C%E5%90%8Ename1%E5%92%8Cname2%E5%88%86%E5%88%AB%E4%B8%BA%E5%A4%9A%E5%B0%91"><span class="nav-number">18.</span> <span class="nav-text">SELECT COALESCE（NULL，fat，2）AS name1，COALESCE（pig，test，test）AS name2 FROM NAMETABLE；以上SQL执行后name1和name2分别为多少</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#datediff%E6%97%A5%E6%9C%9F%E5%87%BD%E6%95%B0"><span class="nav-number">19.</span> <span class="nav-text">datediff日期函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Mysql%E4%B8%AD%E8%A1%A8student-table-id-name-birth-sex-%EF%BC%8C%E6%8F%92%E5%85%A5%E5%A6%82%E4%B8%8B%E8%AE%B0%E5%BD%95%EF%BC%9A-2"><span class="nav-number">20.</span> <span class="nav-text">Mysql中表student_table(id,name,birth,sex)，插入如下记录：</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%85%B3%E4%BA%8E%E8%BF%94%E5%9B%9E%E5%8F%97%E4%B8%8A%E4%B8%80%E4%B8%AASQL%E8%AF%AD%E5%8F%A5%E5%BD%B1%E5%93%8D%E7%9A%84%E8%A1%8C%E6%95%B0%EF%BC%8C%E4%B8%8B%E5%88%97SQL%E8%AF%AD%E5%8F%A5%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">21.</span> <span class="nav-text">关于返回受上一个SQL语句影响的行数，下列SQL语句正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Rank-%E5%87%BD%E6%95%B0"><span class="nav-number">22.</span> <span class="nav-text">Rank()函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%B4%A2%E5%BC%95"><span class="nav-number">23.</span> <span class="nav-text">字符串索引</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#%E6%9F%A5%E8%AF%A2%E6%98%BE%E7%A4%BA%E9%9B%87%E5%91%98%E7%9A%84%E5%A7%93%E5%90%8D%E5%92%8C%E5%A7%93%E5%90%8D%E4%B8%AD%E6%98%AF%E5%90%A6%E5%90%AB%E6%9C%89%E5%AD%97%E6%AF%8DA%E7%9A%84%E4%BF%A1%E6%81%AF%EF%BC%8C%E6%BB%A1%E8%B6%B3%E5%A6%82%E4%B8%8B%E6%9D%A1%E4%BB%B6"><span class="nav-number">23.1.</span> <span class="nav-text">查询显示雇员的姓名和姓名中是否含有字母A的信息，满足如下条件</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#STUFF%E5%87%BD%E6%95%B0"><span class="nav-number">24.</span> <span class="nav-text">STUFF函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E4%B8%AD%E5%85%B3%E4%BA%8E%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BA%8B%E5%8A%A1%E7%9A%84%E7%89%B9%E6%80%A7%E6%8F%8F%E8%BF%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">25.</span> <span class="nav-text">下列选项中关于数据库事务的特性描述正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%BA%8B%E5%8A%A1%E7%9A%84%E7%89%B9%E7%82%B9-ACID"><span class="nav-number">26.</span> <span class="nav-text">事务的特点(ACID)</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E5%88%97%E9%80%89%E9%A1%B9%E5%85%B3%E4%BA%8E%E5%87%BD%E6%95%B0%E7%9A%84%E6%8F%8F%E8%BF%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">27.</span> <span class="nav-text">下列选项关于函数的描述正确的是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E6%B8%B8%E6%A0%87%E7%9A%84INSENSITIVE%E5%8F%82%E6%95%B0"><span class="nav-number">28.</span> <span class="nav-text">游标的INSENSITIVE参数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%B8%8B%E9%9D%A2%E6%9C%89%E5%85%B3sql-%E8%AF%AD%E5%8F%A5%E4%B8%AD-delete%E3%80%81truncate%E7%9A%84%E8%AF%B4%E6%B3%95%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%9F%EF%BC%88%EF%BC%89"><span class="nav-number">29.</span> <span class="nav-text">下面有关sql 语句中 delete、truncate的说法正确的是？（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%9C%A8SQL%E4%B8%AD%E8%AF%AD%E6%B3%95%E8%A7%84%E8%8C%83%E4%B8%AD%EF%BC%8Chaving%E5%AD%90%E5%8F%A5%E7%9A%84%E4%BD%BF%E7%94%A8%E4%B8%8B%E9%9D%A2%E6%8F%8F%E8%BF%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%9A%EF%BC%88-%EF%BC%89"><span class="nav-number">30.</span> <span class="nav-text">在SQL中语法规范中，having子句的使用下面描述正确的是：（    ）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#lt-gt-%E7%AC%A6%E5%8F%B7"><span class="nav-number">31.</span> <span class="nav-text">&lt;&gt;符号</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#ROUND-%E5%87%BD%E6%95%B0%E5%92%8CTRUNCATE-%E5%87%BD%E6%95%B0"><span class="nav-number">32.</span> <span class="nav-text">ROUND()函数和TRUNCATE()函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#union%E7%94%A8%E6%B3%95"><span class="nav-number">33.</span> <span class="nav-text">union用法</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Charindex-%E3%80%81SubString-%E3%80%81Stuff-%E3%80%81Soundex-%E5%87%BD%E6%95%B0"><span class="nav-number">34.</span> <span class="nav-text">Charindex()、SubString()、Stuff()、Soundex()函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#RENAME%E3%80%81MODIFY%E3%80%81ALTER%E3%80%81CHANGE%E7%9A%84%E7%94%A8%E6%B3%95"><span class="nav-number">35.</span> <span class="nav-text">RENAME、MODIFY、ALTER、CHANGE的用法</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#Mysql-%E7%89%88%E6%9C%AC8-0-25-%E4%B8%8D%E6%94%AF%E6%8C%81full-join"><span class="nav-number">36.</span> <span class="nav-text">Mysql(版本8.0.25)不支持full join</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%9C%A8SQL%E4%B8%AD%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%E8%A7%A6%E5%8F%91%E5%99%A8%EF%BC%9F"><span class="nav-number">37.</span> <span class="nav-text">在SQL中如何删除触发器？</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%B7%B2%E7%9F%A5%E6%9F%90%E6%9C%9F%E5%88%8A%E4%BF%A1%E6%81%AF%E5%BA%93%E4%B8%AD%E6%9C%89%E4%BD%9C%E5%AE%B6%E4%BF%A1%E6%81%AF%E8%A1%A8author%EF%BC%88%E4%BD%9C%E8%80%85%E7%BC%96%E5%8F%B7aid%EF%BC%8C%E4%BD%9C%E8%80%85%E5%A7%93%E5%90%8Daname%EF%BC%8C%E4%BD%9C%E8%80%85%E7%AC%94%E5%90%8Dausername%EF%BC%8C%E4%BD%9C%E8%80%85%E9%82%AE%E7%AE%B1aemail%EF%BC%8C%E5%A4%87%E6%B3%A8remarks%EF%BC%89%EF%BC%8C%E7%A8%BF%E4%BB%B6%E8%A1%A8manuscript%EF%BC%88%E7%A8%BF%E4%BB%B6%E7%BC%96%E5%8F%B7mid%EF%BC%8C%E6%A0%87%E9%A2%98mtitle%EF%BC%8C%E4%BD%9C%E8%80%85%E7%BC%96%E5%8F%B7aid%EF%BC%8C%E4%BA%A4%E7%A8%BF%E6%97%B6%E9%97%B4mtime%EF%BC%89%E7%8E%B0%E9%9C%80%E8%A6%81%E8%AE%BE%E7%BD%AE%E5%A4%96%E9%94%AE%E4%BD%9C%E8%80%85%E7%BC%96%E5%8F%B7%EF%BC%8C%E4%B8%8B%E5%88%97%E8%AF%AD%E5%8F%A5%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%98%AF%EF%BC%88B%EF%BC%89"><span class="nav-number">38.</span> <span class="nav-text">已知某期刊信息库中有作家信息表author（作者编号aid，作者姓名aname，作者笔名ausername，作者邮箱aemail，备注remarks），稿件表manuscript（稿件编号mid，标题mtitle，作者编号aid，交稿时间mtime）现需要设置外键作者编号，下列语句正确的是（B）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%85%B3%E4%BA%8EMySQL%E5%B8%B8%E8%A7%81%E7%B4%A2%E5%BC%95%E7%9A%84%E6%8F%8F%E8%BF%B0%E6%AD%A3%E7%A1%AE%E6%98%AF%EF%BC%88C%EF%BC%89"><span class="nav-number">39.</span> <span class="nav-text">关于MySQL常见索引的描述正确是（C）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E6%95%B0%E6%8D%AE%E5%BA%93%E5%A4%87%E4%BB%BD"><span class="nav-number">40.</span> <span class="nav-text">数据库备份</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#if%E5%87%BD%E6%95%B0"><span class="nav-number">41.</span> <span class="nav-text">if函数</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E8%A7%86%E5%9B%BE%E6%98%AF%E4%B8%80%E7%A7%8D%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AF%B9%E8%B1%A1%EF%BC%8C%E6%98%AF%E4%BB%8E%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E8%A1%A8%E6%88%96%E5%85%B6%E4%BB%96%E8%A7%86%E5%9B%BE%E4%B8%AD%E5%AF%BC%E5%87%BA%E7%9A%84%E5%9F%BA%E8%A1%A8%EF%BC%9F"><span class="nav-number">42.</span> <span class="nav-text">视图是一种数据库对象，是从数据库的表或其他视图中导出的基表？</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#SUM-%E5%87%BD%E6%95%B0%E7%9A%84%E5%8A%A0%E4%B8%80%E6%93%8D%E4%BD%9C%E5%92%8CCOUNT-%E5%87%BD%E6%95%B0%E8%AE%A1%E6%95%B0%E6%93%8D%E4%BD%9C"><span class="nav-number">43.</span> <span class="nav-text">SUM()函数的加一操作和COUNT()函数计数操作</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%B4%A2%E5%BC%95"><span class="nav-number">44.</span> <span class="nav-text">索引</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E4%BA%8B%E5%8A%A1%E5%92%8C%E5%B9%B6%E5%8F%91%E6%8E%A7%E5%88%B6"><span class="nav-number">45.</span> <span class="nav-text">事务和并发控制</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E8%A7%86%E5%9B%BE"><span class="nav-number">46.</span> <span class="nav-text">视图</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%81%87%E8%AE%BE%E7%89%9B%E5%AE%A2%E7%BD%91%E4%B8%8A%E6%9C%89%E4%B8%80%E4%BB%BD%E7%BB%9D%E5%AF%86%E6%96%87%E4%BB%B6%E5%AD%98%E4%BA%8E%E6%9F%90%E5%8F%B0%E6%9C%BA%E5%99%A8%E7%9A%84secretData%E6%95%B0%E6%8D%AE%E5%BA%93%E4%B8%AD%E7%9A%84%E6%9F%90%E4%B8%AA%E8%A1%A8%E9%87%8C%E9%9D%A2%EF%BC%8C%E7%8E%B0%E5%9C%A8%E5%87%BA%E4%BA%8E%E6%95%B0%E6%8D%AE%E5%AE%89%E5%85%A8%E7%9A%84%E8%80%83%E8%99%91%EF%BC%8C%E5%AF%B9%E4%BA%8E%E6%96%B0%E5%88%9B%E5%BB%BA%E7%9A%84%E7%94%A8%E6%88%B7%E9%83%BD%E5%8F%AA%E8%83%BD%E6%8B%A5%E6%9C%89%E8%AF%A5%E6%9C%BA%E5%99%A8%E7%9A%84%E7%99%BB%E5%BD%95%E6%9D%83%E9%99%90%EF%BC%8C%E8%80%8C%E4%B8%8D%E8%83%BD%E6%8B%A5%E6%9C%89%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E5%85%B6%E4%BB%96%E6%9D%83%E9%99%90%EF%BC%8C%E9%82%A3%E4%B9%88%E6%96%B0%E5%88%9B%E5%BB%BAnkw%E7%94%A8%E6%88%B7%E6%BB%A1%E8%B6%B3%E8%BF%99%E4%B8%80%E8%A6%81%E6%B1%82%E7%9A%84%E8%AF%AD%E5%8F%A5%E6%98%AF%EF%BC%88%EF%BC%89"><span class="nav-number">47.</span> <span class="nav-text">假设牛客网上有一份绝密文件存于某台机器的secretData数据库中的某个表里面，现在出于数据安全的考虑，对于新创建的用户都只能拥有该机器的登录权限，而不能拥有数据库的其他权限，那么新创建nkw用户满足这一要求的语句是（）</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E7%BB%B4%E6%8A%A4%E5%8F%82%E7%85%A7%E5%AE%8C%E6%95%B4%E6%80%A7%E7%BA%A6%E6%9D%9F%E7%9A%84%E7%AD%96%E7%95%A5"><span class="nav-number">48.</span> <span class="nav-text">维护参照完整性约束的策略</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#%E5%85%B3%E4%BA%8E-lt-gt-%E4%B9%9F%E4%BC%9A%E5%B0%86null%E5%80%BC%E6%8E%92%E9%99%A4%E6%8E%89%E7%9A%84%E9%97%AE%E9%A2%98"><span class="nav-number">49.</span> <span class="nav-text">关于&lt;&gt;也会将null值排除掉的问题</span></a></li></ol></div>
      </div>
      <!--/noindex-->

      <div class="site-overview-wrap sidebar-panel">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person">
  <p class="site-author-name" itemprop="name">王诚</p>
  <div class="site-description" itemprop="description">命运对勇士低语，你无法抵御风暴；勇士低声回应，我就是风暴</div>
</div>
<div class="site-state-wrap motion-element">
  <nav class="site-state">
      <div class="site-state-item site-state-posts">
          <a href="/wang-cheng/archives/">
        
          <span class="site-state-item-count">32</span>
          <span class="site-state-item-name">日志</span>
        </a>
      </div>
      <div class="site-state-item site-state-tags">
            <a href="/wang-cheng/tags/">
          
        <span class="site-state-item-count">12</span>
        <span class="site-state-item-name">标签</span></a>
      </div>
  </nav>
</div>



      </div>

    </div>
  </aside>
  <div id="sidebar-dimmer"></div>


      </div>
    </main>

    <footer class="footer">
      <div class="footer-inner">
        

        

<div class="copyright">
  
  &copy; 
  <span itemprop="copyrightYear">2022</span>
  <span class="with-love">
    <i class="fa fa-heart"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">王诚</span>
</div>
  <div class="powered-by">由 <a href="https://hexo.io/" class="theme-link" rel="noopener" target="_blank">Hexo</a> & <a href="https://theme-next.org/" class="theme-link" rel="noopener" target="_blank">NexT.Gemini</a> 强力驱动
  </div>

        
<div class="busuanzi-count">
  <script async src="https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
    <span class="post-meta-item" id="busuanzi_container_site_uv" style="display: none;">
      <span class="post-meta-item-icon">
        <i class="fa fa-user"></i>
      </span>
      <span class="site-uv" title="总访客量">
        <span id="busuanzi_value_site_uv"></span>
      </span>
    </span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item" id="busuanzi_container_site_pv" style="display: none;">
      <span class="post-meta-item-icon">
        <i class="fa fa-eye"></i>
      </span>
      <span class="site-pv" title="总访问量">
        <span id="busuanzi_value_site_pv"></span>
      </span>
    </span>
</div>








      </div>
    </footer>
  </div>

  
  <script src="/wang-cheng/lib/anime.min.js"></script>
  <script src="/wang-cheng/lib/velocity/velocity.min.js"></script>
  <script src="/wang-cheng/lib/velocity/velocity.ui.min.js"></script>

<script src="/wang-cheng/js/utils.js"></script>

<script src="/wang-cheng/js/motion.js"></script>


<script src="/wang-cheng/js/schemes/pisces.js"></script>


<script src="/wang-cheng/js/next-boot.js"></script>




  















  

  

  

</body>
</html>
